home *** CD-ROM | disk | FTP | other *** search
/ TOS Silver 2000 / TOS Silver 2000.iso / programm / GNU_C++ / LIB / SRC / GEMLIB38.LZH / a_objc.c < prev    next >
Encoding:
C/C++ Source or Header  |  1998-07-10  |  3.4 KB  |  163 lines

  1. /*
  2.  * Aes object library interface
  3.  *
  4.  * ++jrb bammi@cadence.com
  5.  * modified: mj -- ntomczak@vm.ucs.ualberta.ca
  6.  * modified: cg -- d2cg@dtek.chalmers.se
  7.  * modified: cf -- felsch@tu-harburg.de
  8.  */
  9. #include "gem.h"
  10.  
  11.  
  12. int objc_add(void *Tree, int Parent, int Child)
  13. {
  14.     aes_intin[0] = Parent;
  15.     aes_intin[1] = Child;
  16.     aes_addrin[0] = (long)Tree;
  17.    aes_control[0] = 40;
  18.    aes_control[1] = 2;
  19.    aes_control[2] = 1;
  20.    aes_control[3] = 1;
  21.    aes_control[4] = 0;
  22.    aes(&aes_params);
  23.     return aes_intout[0];
  24. }
  25.  
  26.  
  27. int objc_change(void *Tree, int Object, int Res, int Cx, int Cy, int Cw, int Ch,  int NewState, int Redraw)
  28. {
  29.     aes_intin[0] = Object;
  30.     aes_intin[1] = Res;
  31.     aes_intin[2] = Cx;
  32.     aes_intin[3] = Cy;
  33.     aes_intin[4] = Cw;
  34.     aes_intin[5] = Ch;
  35.     aes_intin[6] = NewState;
  36.     aes_intin[7] = Redraw;
  37.     aes_addrin[0] = (long)Tree;
  38.    aes_control[0] = 47;
  39.    aes_control[1] = 8;
  40.    aes_control[2] = 1;
  41.    aes_control[3] = 1;
  42.    aes_control[4] = 0;
  43.    aes(&aes_params);
  44.     return aes_intout[0];
  45. }
  46.  
  47.  
  48. int objc_delete(void *Tree, int Object)
  49. {
  50.     aes_addrin[0] = (long)Tree;
  51.     aes_intin[0]  = Object;
  52.    aes_control[0] = 41;
  53.    aes_control[1] = 1;
  54.    aes_control[2] = 1;
  55.    aes_control[3] = 1;
  56.    aes_control[4] = 0;
  57.    aes(&aes_params);
  58.     return aes_intout[0];
  59. }
  60.  
  61.  
  62. int objc_draw(void *Tree, int Start, int Depth, int Cx, int Cy, int Cw, int Ch)
  63. {
  64.     aes_intin[0] = Start;
  65.     aes_intin[1] = Depth;
  66.     aes_intin[2] = Cx;
  67.     aes_intin[3] = Cy;
  68.     aes_intin[4] = Cw;
  69.     aes_intin[5] = Ch;
  70.     aes_addrin[0] = (long)Tree;
  71.    aes_control[0] = 42;
  72.    aes_control[1] = 6;
  73.    aes_control[2] = 1;
  74.    aes_control[3] = 1;
  75.    aes_control[4] = 0;
  76.    aes(&aes_params);
  77.     return aes_intout[0];
  78. }
  79.  
  80.  
  81. int objc_edit(void *Tree, int Object, int Char, int *Index, int Kind)
  82. {
  83.     aes_intin[0] = Object;
  84.     aes_intin[1] = Char;
  85.     aes_intin[2] = *Index;
  86.     aes_intin[3] = Kind;
  87.     aes_addrin[0] = (long)Tree;
  88.    aes_control[0] = 46;
  89.    aes_control[1] = 4;
  90.    aes_control[2] = 2;
  91.    aes_control[3] = 1;
  92.    aes_control[4] = 0;
  93.    aes(&aes_params);
  94.     *Index = aes_intout[1];
  95.     return aes_intout[0];
  96. }
  97.  
  98.  
  99. int objc_find(void *Tree, int Start, int Depth, int Mx, int My)
  100. {
  101.     aes_intin[0] = Start;
  102.     aes_intin[1] = Depth;
  103.     aes_intin[2] = Mx;
  104.     aes_intin[3] = My;
  105.     aes_addrin[0] = (long)Tree;
  106.    aes_control[0] = 43;
  107.    aes_control[1] = 4;
  108.    aes_control[2] = 1;
  109.    aes_control[3] = 1;
  110.    aes_control[4] = 0;
  111.    aes(&aes_params);
  112.     return aes_intout[0];
  113. }
  114.  
  115.  
  116. int objc_offset(void *Tree, int Object, int  *X, int *Y)
  117. {
  118.     aes_addrin[0] = (long)Tree;
  119.     aes_intin[0] = Object;
  120.    aes_control[0] = 44;
  121.    aes_control[1] = 1;
  122.    aes_control[2] = 3;
  123.    aes_control[3] = 1;
  124.    aes_control[4] = 0;
  125.    aes(&aes_params);
  126.     *X = aes_intout[1];
  127.     *Y = aes_intout[2];
  128.     return aes_intout[0];
  129. }
  130.  
  131.  
  132. int objc_order(void *Tree, int Object, int NewPos)
  133. {
  134.     aes_intin[0] = Object;
  135.     aes_intin[1] = NewPos;
  136.     aes_addrin[0] = (long)Tree;
  137.    aes_control[0] = 45;
  138.    aes_control[1] = 2;
  139.    aes_control[2] = 1;
  140.    aes_control[3] = 1;
  141.    aes_control[4] = 0;
  142.    aes(&aes_params);
  143.     return aes_intout[0];
  144. }
  145.  
  146.  
  147. int objc_sysvar(int mode, int which, int in1, int in2, int *out1, int *out2)
  148. {
  149.     aes_intin[0] = mode;
  150.     aes_intin[1] = which;
  151.     aes_intin[2] = in1;
  152.     aes_intin[3] = in2;
  153.    aes_control[0] = 48;
  154.    aes_control[1] = 4;
  155.    aes_control[2] = 3;
  156.    aes_control[3] = 0;
  157.    aes_control[4] = 0;
  158.    aes(&aes_params);
  159.    *out1 = aes_intout[1];
  160.    *out2 = aes_intout[2];
  161.    return aes_intout[0];
  162. }
  163.